package com.zr.lagalplant.mapper;

import com.zr.lagalplant.pojo.LegalPerson;
import com.zr.lagalplant.pojo.LegalPlantSelectVo;
import com.zr.lagalplant.pojo.LegalPlantVo;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import javax.validation.constraints.NotBlank;
import java.util.List;

/**
 * Created by Administrator on 2019/10/8.
 */
@Mapper
public interface LegalPersonMapper {

    int querycount(LegalPlantSelectVo legalPlantSelectVo);

    List<LegalPlantVo> querydata(LegalPlantSelectVo legalPlantSelectVo);

    @Select("select * from legalperson where userId=#{userId} ")
    List<LegalPerson> queryLegalPersonByUserId(Integer userId);

    @Select("select * from legalperson where legalPersonCode=#{legalPersonCode}")
    List<LegalPerson> queryLegalPersonCode(@NotBlank(message = "添加：法人编码不能为空！") String legalPersonCode);

    @Select("select * from legalplant where legalPlantCode=#{legalPlantCode}")
    List<LegalPlantVo> querylegalPlantCode(@NotBlank(message = "添加：工厂编码不能为空！") String legalPlantCode);

    @Insert("insert into legalplant " +
            "(legalPlantCode,legalPlantDec,enabled,legalPersonCode,createName,createTime) " +
            "values" +
            "(#{legalPlantCode},#{legalPlantDec},#{enabled},#{legalPersonCode}" +
            ",#{createName},#{createTime})")
    void add(LegalPlantVo legalPlantVo);

    @Select("select * from legalplant where legalPlantCode=#{legalPlantCode}")
    List<LegalPlantVo> queryByCode(@NotBlank(message = "修改 工厂编码不能为空！") String legalPlantCode);

    @Update("update legalplant set legalPlantDec=#{legalPlantDec},enabled=#{enabled}," +
            "updateName=#{updateName},updateTime=#{updateTime} where legalPlantCode = #{legalPlantCode}")
    void update(LegalPlantVo plantVo1);

    @Select("select * from legalplant where legalPlantCode = #{legalPlantCode}")
    LegalPlantVo queryById(@NotBlank(message = "工厂编码不能为空！") String legalPlantCode);

    //修改状态
    @Update("update legalplant set enabled=#{enabled}," +
            "updateName=#{updateName},updateTime=#{updateTime} where legalPlantCode = #{legalPlantCode}")
    void updateStatus(LegalPlantVo plantVo1);
}
